load(
    "@rules_rust//rust:defs.bzl",
    "rust_doc",
    "rust_doc_test",
    "rust_proc_macro",
)

rust_proc_macro(
    name = "nativelink-metric-macro-derive",
    srcs = [
        "src/lib.rs",
    ],
    visibility = ["//visibility:public"],
    deps = [
        "@crates//:proc-macro2",
        "@crates//:quote",
        "@crates//:syn",
    ],
)

rust_doc(
    name = "docs",
    crate = ":nativelink-metric-macro-derive",
    visibility = ["//visibility:public"],
)

rust_doc_test(
    name = "doc_test",
    timeout = "short",
    crate = ":nativelink-metric-macro-derive",
)
